// *** ADDED BY HEADER FIXUP ***
#include <string>
// *** END ***
#ifndef IDADE_H
#define IDADE_H
/*----------------------------------*/
#include "Basicos.h"/*Inclui <string>,<iostream>,<stdexcept>*/
#include "Data.h"
#include <cstdlib>
#include <sstream>
/*----------------------------------*/
//! @details Classe que contem as informacoes necessarias para se determinar uma idade.
class Idade:public TipoBasico
{
    private:
        //! @details Valida se a string contem apenas numeros e se o numero formado esta entre 0 e 120
        void validar(string) throw(invalid_argument);
        //! @details Retorna uma string idade a partir de uma Data de aniversario, deve ser entao chamada o metodo validar(string) para que haja a validacao da idade.
        string validar(Data) throw(invalid_argument);
    public:
        //! @details Atribuidor a partir de uma Data
        void setValor(Data);
        //! @details Atribuidor a partir de uma string
        void setValor(string);
        //! @details Construtor sem parametros
        Idade(){};
        //! @details Construtor com parametro string
        Idade(string);
        //! @details Construtor com parametro Data
        Idade(Data);
};
#endif
